package xdu.lz.protocol;

import xdu.lz.framework.RequestWrap;
import xdu.lz.framework.URL;

/**
 * 定义暴露规则，不同的暴露实现类去实现接口
 * send是客户端
 * start是服务端
 */
public interface Protocol {

    /**
     * 启动客户端，获取服务
     * @param url 服务地址
     * @param invocation  包装的请求格式
     * @return
     */
    String refer(URL url, RequestWrap invocation);

    /**
     * 启动服务器，注册到对应的URL并暴露服务
     * @param url
     */
    void export(URL url);

}
